package com.tencent.iov.cowin.befsale.clue.controller.clue.vo.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tencent.iov.cowin.befsale.clue.crypt.annotation.CustomCryptField;
import com.tencent.iov.cowin.befsale.clue.crypt.enums.CustomCryptTypeEnum;
import com.software.boot.common.model.rest.BaseResponse;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * _Response层
 *
 * @author whp
 * @version 1.0
 * @created 2021-12-21 16:16:06
 */
@Data
public class ClueToMqResponse implements BaseResponse {
    @ApiModelProperty(value = "消息唯一值")
    private String uuId;
    @ApiModelProperty(value = "crm线索id,clue表")
    private String crmClueId;
    @ApiModelProperty(value = "线索源id/线索id,record表")
    private Long clueInitialId;
    @ApiModelProperty(value = "线索源id/线索id,record表")
    private Long clueId;
    @ApiModelProperty(value = "来源类型1，customer表")
    private Integer sourceFirst;
    @ApiModelProperty(value = "来源类型2，customer表")
    private Integer sourceSecond;
    @ApiModelProperty(value = "来源类型3，customer表")
    private String sourceThird;
    @ApiModelProperty(value = "来源活动，customer表")
    private String sourceActivityId;
    @ApiModelProperty(value = "客户姓名，customer表")
    private String name;
    @ApiModelProperty(value = "客户手机号，customer表")
    @CustomCryptField(CustomCryptTypeEnum.PHONE_NUMBER)
    private String phone;
    @ApiModelProperty(value = "跟进人名称")
    private String followEmpName;
    @ApiModelProperty(value = "跟进人id")
    private String followEmpId;
    @ApiModelProperty(value = "跟进人手机号")
    @CustomCryptField(CustomCryptTypeEnum.PHONE_NUMBER)
    private String followEmpPhone;
    /*@ApiModelProperty(value = "来源创建人，customer表")
    private String sourceCreatedById;*/
    @ApiModelProperty(value = "线索状态:对应二级分类,record")
    private Integer clueStatus;
    private List<ClueToMqVehResponse> intentionVehicleList;
    @ApiModelProperty(value = "oneId,customer")
    private String  oneId;
    @ApiModelProperty(value = "经销商id")
    private String dealerId;
    @ApiModelProperty(value = "经销商code表,反查")
    private String dealerCode;
    @ApiModelProperty(value = "record主键")
    private Long rId;
    @ApiModelProperty(value = "试驾类型:针对试乘试驾，试乘/试驾，record反查")
    private Integer driveVehicleType;
    @ApiModelProperty(value = "试驾车系id")
    private String driveSeriesId;
    @ApiModelProperty(value = "试驾车系code，record,反查")
    private String driveVehicleSeriesCode;
    @ApiModelProperty(value = "试驾车型id")
    private String driveModelId;
    @ApiModelProperty(value = "试驾车型code，record，反查")
    private String driveVehicleModelCode;
    @ApiModelProperty(value = "试驾时间，record")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date driveVehicleTime;
    @ApiModelProperty(value = "交车_姓名,record")
    private String deliveryName;
    @ApiModelProperty(value = "交车_手机号,record")
    @CustomCryptField(CustomCryptTypeEnum.PHONE_NUMBER)
    private String deliveryPhone;
    @ApiModelProperty(value = "记录创建时间,record")
    private Date recordCreatedTime;
    @ApiModelProperty(value = "交车证件-身份证")
    private String deliveryIdentify;
    @ApiModelProperty(value = "交车证件-发票")
    private String deliveryBill;

    @ApiModelProperty(value = "订单号:针对实销/退车，订单")
    private String orderNum;
    @ApiModelProperty(value = "订单ID")
    private Long orderId;
    @ApiModelProperty(value = "战败主因，战败申请")
    private String clueFailReasonList;
    @ApiModelProperty(value = "战败备注，战败申请")
    private String clueFailRemark;


}